Skip to main content
Version: Upcoming

SRRiskControl

V8 Message Definiton

SpdrRiskControl records are used to establish supervisory control of equity, and equity option trading in SpiderRock execution engines. These records are only viewable and editable by RiskAdmin users with access to the control record ClientFirm

METADATA

AttributeValue
Topic4535-risk-control
MLink TokenClientControl
ProductSRControl
accessTypeSELECT,UPDATE,INSERT,DELETE

Table Definition

FieldTypeKeyDefault ValueComment
ticker_atenum - AssetTypePRI'None'ANYANY default if a more precise ticker control does not exist
ticker_tsenum - TickerSrcPRI'None'ANYANY default if a more precise ticker control does not exist
ticker_tkVARCHAR(12)PRI''ANYANY default if a more precise ticker control does not exist
riskControlKeyVARCHAR(64)PRI''must be an SRClientAccnt if riskControlLevelAccnt must be an SRUser if riskControlLevelUser must be a colon separated SRUser and SRClientAccnt if riskControlLevelUserAccnt ignored if riskControlLevelClientFirm
riskControlLevelenum - RiskControlLevelPRI'None'
riskFirmVARCHAR(16)PRI''
isTestAccntenum - YesNoPRI'None'if Yes this control applies only to risk from test accnts
stkEnabledenum - MarState'None'
futEnabledenum - MarState'None'
optEnabledenum - MarState'None'
marginLimitDayFLOAT-1maximum net per symbolday day portfolio day trades only margin can include external sources
openExposureLimitFLOAT-1maximum abs open child order Delta no netting open child orders only
maxDayDDeltaLnFLOAT-1open long Delta per trading session
maxDayDDeltaShFLOAT-1open short Delta per trading session
maxDayDDeltaAbsFLOAT-1absolute Delta ddBot ddSld position per trading session
maxDayWtVegaLnFLOAT-1open long WtVega per trading session
maxDayWtVegaShFLOAT-1open short WtVega per trading session
maxDayWtVegaAbsFLOAT-1open absolute WtVega WtVeBot WtVeSld per trading session
maxDayNValueLnFLOAT-1open long notional value per trading session
maxDayNValueShFLOAT-1open short notional value per trading session
maxDayNValueAbsFLOAT-1absolute notional value NValueBot NValueSld per trading session
orderMaxStkQtyINT0Number of equity shares that can be bought or sold by a single parent order Has a maximum value of 10M
orderMaxFutQtyINT0Number of futures contracts that can be bought or sold by a single parent order
orderMaxOptQtyINT0Number of option contracts that can be bought or sold by a single parent order
maxDayStkShBotINT0Day stock shares bot
maxDayStkShSldINT0Day stock shares sld
maxDayStkShAbsINT0Maximum absolute net day stock shares
maxDayOptCnBotINT0Day option contracts bot
maxDayOptCnSldINT0Day optioncontracts sld
maxDayOptCnAbsINT0Maximum absolute net day future option
maxDayFutCnBotINT0Day future contracts bot
maxDayFutCnSldINT0Day future contracts sld
maxDayFutCnAbsINT0Maximum absolute net day future contracts
modifiedByVARCHAR(24)''
modifiedInenum - SysEnvironment'None'
timestampDATETIME(6)'1900-01-01 00:00:00.000000'

PRIMARY KEY DEFINITION (Unique)

FieldSequence
ticker_tk1
ticker_at2
ticker_ts3
riskControlKey4
riskControlLevel5
riskFirm6
isTestAccnt7

CREATE TABLE EXAMPLE QUERY

CREATE TABLE `SRControl`.`MsgSRRiskControl` (
`ticker_at` ENUM('None','EQT','IDX','BND','CUR','COM','FUT','SYN','WAR','FLX','MUT','SPD','MM','MF','COIN','TOKEN','ANY','RATE') NOT NULL DEFAULT 'None' COMMENT '''*-ANY-ANY'' default (if a more precise ticker control does not exist)',
`ticker_ts` ENUM('None','SR','NMS','CME','ICE','CFE','CBOT','NYMEX','COMEX','RUT','CIDX','ARCA','NYSE','OTC','NSDQ','MFQS','MIAX','DJI','CUSIP','ISIN','BXE','SCE','ANY','CXE','DXE','NXAM','NXBR','NXLS','NXML','NXOS','NXP','EUREX','CEDX','ICEFE','ICELF') NOT NULL DEFAULT 'None' COMMENT '''*-ANY-ANY'' default (if a more precise ticker control does not exist)',
`ticker_tk` VARCHAR(12) NOT NULL DEFAULT '' COMMENT '''*-ANY-ANY'' default (if a more precise ticker control does not exist)',
`riskControlKey` VARCHAR(64) NOT NULL DEFAULT '' COMMENT 'must be an SRClientAccnt if riskControlLevel=Accnt; must be an SRUser if riskControlLevel=User; must be a colon separated SRUser and SRClientAccnt if riskControlLevel=UserAccnt; ignored if riskControlLevel=ClientFirm',
`riskControlLevel` ENUM('None','ClientFirm','Accnt','User','UserAccnt') NOT NULL DEFAULT 'None',
`riskFirm` VARCHAR(16) NOT NULL DEFAULT '',
`isTestAccnt` ENUM('None','Yes','No') NOT NULL DEFAULT 'None' COMMENT 'if Yes, this control applies only to risk from test accnts',
`stkEnabled` ENUM('None','Enable','Disabled','CloseOnly') NOT NULL DEFAULT 'None',
`futEnabled` ENUM('None','Enable','Disabled','CloseOnly') NOT NULL DEFAULT 'None',
`optEnabled` ENUM('None','Enable','Disabled','CloseOnly') NOT NULL DEFAULT 'None',
`marginLimitDay` FLOAT NOT NULL DEFAULT -1 COMMENT 'maximum net (per symbol/day) day portfolio (day trades only) margin (can include external sources)',
`openExposureLimit` FLOAT NOT NULL DEFAULT -1 COMMENT 'maximum abs open child order $Delta (no netting) (open child orders only)',
`maxDayDDeltaLn` FLOAT NOT NULL DEFAULT -1 COMMENT 'open long $Delta per trading session',
`maxDayDDeltaSh` FLOAT NOT NULL DEFAULT -1 COMMENT 'open short $Delta per trading session',
`maxDayDDeltaAbs` FLOAT NOT NULL DEFAULT -1 COMMENT 'absolute $Delta, |ddBot| + |ddSld| position per trading session',
`maxDayWtVegaLn` FLOAT NOT NULL DEFAULT -1 COMMENT 'open long WtVega per trading session',
`maxDayWtVegaSh` FLOAT NOT NULL DEFAULT -1 COMMENT 'open short WtVega per trading session',
`maxDayWtVegaAbs` FLOAT NOT NULL DEFAULT -1 COMMENT 'open absolute WtVega, |WtVeBot| + |WtVeSld| per trading session',
`maxDayNValueLn` FLOAT NOT NULL DEFAULT -1 COMMENT 'open long notional value per trading session',
`maxDayNValueSh` FLOAT NOT NULL DEFAULT -1 COMMENT 'open short notional value per trading session',
`maxDayNValueAbs` FLOAT NOT NULL DEFAULT -1 COMMENT 'absolute notional value, |NValueBot| + |NValueSld| per trading session',
`orderMaxStkQty` INT NOT NULL DEFAULT 0 COMMENT 'Number of equity shares that can be bought or sold by a single parent order. Has a maximum value of 10M',
`orderMaxFutQty` INT NOT NULL DEFAULT 0 COMMENT 'Number of futures contracts that can be bought or sold by a single parent order',
`orderMaxOptQty` INT NOT NULL DEFAULT 0 COMMENT 'Number of option contracts that can be bought or sold by a single parent order',
`maxDayStkShBot` INT NOT NULL DEFAULT 0 COMMENT 'Day stock shares bot',
`maxDayStkShSld` INT NOT NULL DEFAULT 0 COMMENT 'Day stock shares sld',
`maxDayStkShAbs` INT NOT NULL DEFAULT 0 COMMENT 'Maximum absolute (net) day stock shares',
`maxDayOptCnBot` INT NOT NULL DEFAULT 0 COMMENT 'Day option contracts bot',
`maxDayOptCnSld` INT NOT NULL DEFAULT 0 COMMENT 'Day optioncontracts sld',
`maxDayOptCnAbs` INT NOT NULL DEFAULT 0 COMMENT 'Maximum absolute (net) day future option',
`maxDayFutCnBot` INT NOT NULL DEFAULT 0 COMMENT 'Day future contracts bot',
`maxDayFutCnSld` INT NOT NULL DEFAULT 0 COMMENT 'Day future contracts sld',
`maxDayFutCnAbs` INT NOT NULL DEFAULT 0 COMMENT 'Maximum absolute (net) day future contracts',
`modifiedBy` VARCHAR(24) NOT NULL DEFAULT '',
`modifiedIn` ENUM('None','Neptune','Pluto','V7_Stable','V7_Latest','Saturn','Venus','Mars','SysTest','V7_Current') NOT NULL DEFAULT 'None',
`timestamp` DATETIME(6) NOT NULL DEFAULT '1900-01-01 00:00:00.000000',
PRIMARY KEY USING HASH (`ticker_tk`,`ticker_at`,`ticker_ts`,`riskControlKey`,`riskControlLevel`,`riskFirm`,`isTestAccnt`)
) ENGINE=SRSE DEFAULT CHARSET=LATIN1 COMMENT='SpdrRiskControl records are used to establish supervisory control of equity, and equity option trading in SpiderRock execution engines. These records are only viewable and editable by RiskAdmin users with access to the control record ClientFirm';

SELECT TABLE EXAMPLE QUERY

SELECT
`ticker_at`,
`ticker_ts`,
`ticker_tk`,
`riskControlKey`,
`riskControlLevel`,
`riskFirm`,
`isTestAccnt`,
`stkEnabled`,
`futEnabled`,
`optEnabled`,
`marginLimitDay`,
`openExposureLimit`,
`maxDayDDeltaLn`,
`maxDayDDeltaSh`,
`maxDayDDeltaAbs`,
`maxDayWtVegaLn`,
`maxDayWtVegaSh`,
`maxDayWtVegaAbs`,
`maxDayNValueLn`,
`maxDayNValueSh`,
`maxDayNValueAbs`,
`orderMaxStkQty`,
`orderMaxFutQty`,
`orderMaxOptQty`,
`maxDayStkShBot`,
`maxDayStkShSld`,
`maxDayStkShAbs`,
`maxDayOptCnBot`,
`maxDayOptCnSld`,
`maxDayOptCnAbs`,
`maxDayFutCnBot`,
`maxDayFutCnSld`,
`maxDayFutCnAbs`,
`timestamp`
FROM `SRControl`.`MsgSRRiskControl`
WHERE
/* Replace with a ENUM('None','EQT','IDX','BND','CUR','COM','FUT','SYN','WAR','FLX','MUT','SPD','MM','MF','COIN','TOKEN','ANY','RATE') */
`ticker_at` = 'None'
AND
/* Replace with a ENUM('None','SR','NMS','CME','ICE','CFE','CBOT','NYMEX','COMEX','RUT','CIDX','ARCA','NYSE','OTC','NSDQ','MFQS','MIAX','DJI','CUSIP','ISIN','BXE','SCE','ANY','CXE','DXE','NXAM','NXBR','NXLS','NXML','NXOS','NXP','EUREX','CEDX','ICEFE','ICELF') */
`ticker_ts` = 'None'
AND
/* Replace with a VARCHAR(12) */
`ticker_tk` = 'Example_ticker_tk'
AND
/* Replace with a VARCHAR(64) */
`riskControlKey` = 'Example_riskControlKey'
AND
/* Replace with a ENUM('None','ClientFirm','Accnt','User','UserAccnt') */
`riskControlLevel` = 'None'
AND
/* Replace with a VARCHAR(16) */
`riskFirm` = 'Example_riskFirm'
AND
/* Replace with a ENUM('None','Yes','No') */
`isTestAccnt` = 'None';

UPDATE TABLE EXAMPLE QUERY

UPDATE `SRControl`.`MsgSRRiskControl` 
SET
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`stkEnabled` = 'None',
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`futEnabled` = 'None',
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`optEnabled` = 'None',
/* Replace with a FLOAT */
`marginLimitDay` = 1.23,
/* Replace with a FLOAT */
`openExposureLimit` = 1.23,
/* Replace with a FLOAT */
`maxDayDDeltaLn` = 1.23,
/* Replace with a FLOAT */
`maxDayDDeltaSh` = 1.23,
/* Replace with a FLOAT */
`maxDayDDeltaAbs` = 1.23,
/* Replace with a FLOAT */
`maxDayWtVegaLn` = 1.23,
/* Replace with a FLOAT */
`maxDayWtVegaSh` = 1.23,
/* Replace with a FLOAT */
`maxDayWtVegaAbs` = 1.23,
/* Replace with a FLOAT */
`maxDayNValueLn` = 1.23,
/* Replace with a FLOAT */
`maxDayNValueSh` = 1.23,
/* Replace with a FLOAT */
`maxDayNValueAbs` = 1.23,
/* Replace with a INT */
`orderMaxStkQty` = 5,
/* Replace with a INT */
`orderMaxFutQty` = 5,
/* Replace with a INT */
`orderMaxOptQty` = 5,
/* Replace with a INT */
`maxDayStkShBot` = 5,
/* Replace with a INT */
`maxDayStkShSld` = 5,
/* Replace with a INT */
`maxDayStkShAbs` = 5,
/* Replace with a INT */
`maxDayOptCnBot` = 5,
/* Replace with a INT */
`maxDayOptCnSld` = 5,
/* Replace with a INT */
`maxDayOptCnAbs` = 5,
/* Replace with a INT */
`maxDayFutCnBot` = 5,
/* Replace with a INT */
`maxDayFutCnSld` = 5,
/* Replace with a INT */
`maxDayFutCnAbs` = 5,
/* Replace with a DATETIME(6) */
`timestamp` = '2022-01-01 12:34:56.000000'
WHERE
/* Replace with a ENUM('None','EQT','IDX','BND','CUR','COM','FUT','SYN','WAR','FLX','MUT','SPD','MM','MF','COIN','TOKEN','ANY','RATE') */
`ticker_at` = 'None'
AND
/* Replace with a ENUM('None','SR','NMS','CME','ICE','CFE','CBOT','NYMEX','COMEX','RUT','CIDX','ARCA','NYSE','OTC','NSDQ','MFQS','MIAX','DJI','CUSIP','ISIN','BXE','SCE','ANY','CXE','DXE','NXAM','NXBR','NXLS','NXML','NXOS','NXP','EUREX','CEDX','ICEFE','ICELF') */
`ticker_ts` = 'None'
AND
/* Replace with a VARCHAR(12) */
`ticker_tk` = 'Example_ticker_tk'
AND
/* Replace with a VARCHAR(64) */
`riskControlKey` = 'Example_riskControlKey'
AND
/* Replace with a ENUM('None','ClientFirm','Accnt','User','UserAccnt') */
`riskControlLevel` = 'None'
AND
/* Replace with a VARCHAR(16) */
`riskFirm` = 'Example_riskFirm'
AND
/* Replace with a ENUM('None','Yes','No') */
`isTestAccnt` = 'None';

INSERT TABLE EXAMPLE QUERY

INSERT INTO `SRControl`.`MsgSRRiskControl`(
/* Replace with a ENUM('None','EQT','IDX','BND','CUR','COM','FUT','SYN','WAR','FLX','MUT','SPD','MM','MF','COIN','TOKEN','ANY','RATE') */
`ticker_at`,
/* Replace with a ENUM('None','SR','NMS','CME','ICE','CFE','CBOT','NYMEX','COMEX','RUT','CIDX','ARCA','NYSE','OTC','NSDQ','MFQS','MIAX','DJI','CUSIP','ISIN','BXE','SCE','ANY','CXE','DXE','NXAM','NXBR','NXLS','NXML','NXOS','NXP','EUREX','CEDX','ICEFE','ICELF') */
`ticker_ts`,
/* Replace with a VARCHAR(12) */
`ticker_tk`,
/* Replace with a VARCHAR(64) */
`riskControlKey`,
/* Replace with a ENUM('None','ClientFirm','Accnt','User','UserAccnt') */
`riskControlLevel`,
/* Replace with a VARCHAR(16) */
`riskFirm`,
/* Replace with a ENUM('None','Yes','No') */
`isTestAccnt`,
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`stkEnabled`,
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`futEnabled`,
/* Replace with a ENUM('None','Enable','Disabled','CloseOnly') */
`optEnabled`,
/* Replace with a FLOAT */
`marginLimitDay`,
/* Replace with a FLOAT */
`openExposureLimit`,
/* Replace with a FLOAT */
`maxDayDDeltaLn`,
/* Replace with a FLOAT */
`maxDayDDeltaSh`,
/* Replace with a FLOAT */
`maxDayDDeltaAbs`,
/* Replace with a FLOAT */
`maxDayWtVegaLn`,
/* Replace with a FLOAT */
`maxDayWtVegaSh`,
/* Replace with a FLOAT */
`maxDayWtVegaAbs`,
/* Replace with a FLOAT */
`maxDayNValueLn`,
/* Replace with a FLOAT */
`maxDayNValueSh`,
/* Replace with a FLOAT */
`maxDayNValueAbs`,
/* Replace with a INT */
`orderMaxStkQty`,
/* Replace with a INT */
`orderMaxFutQty`,
/* Replace with a INT */
`orderMaxOptQty`,
/* Replace with a INT */
`maxDayStkShBot`,
/* Replace with a INT */
`maxDayStkShSld`,
/* Replace with a INT */
`maxDayStkShAbs`,
/* Replace with a INT */
`maxDayOptCnBot`,
/* Replace with a INT */
`maxDayOptCnSld`,
/* Replace with a INT */
`maxDayOptCnAbs`,
/* Replace with a INT */
`maxDayFutCnBot`,
/* Replace with a INT */
`maxDayFutCnSld`,
/* Replace with a INT */
`maxDayFutCnAbs`,
/* Replace with a DATETIME(6) */
`timestamp`
)
VALUES(
'None',
'None',
'Example_ticker_tk',
'Example_riskControlKey',
'None',
'Example_riskFirm',
'None',
'None',
'None',
'None',
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
1.23,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
'2022-01-01 12:34:56.000000'
);

DELETE TABLE EXAMPLE QUERY

DELETE FROM `SRControl`.`MsgSRRiskControl` 
WHERE
/* Replace with a ENUM('None','EQT','IDX','BND','CUR','COM','FUT','SYN','WAR','FLX','MUT','SPD','MM','MF','COIN','TOKEN','ANY','RATE') */
`ticker_at` = 'None'
AND
/* Replace with a ENUM('None','SR','NMS','CME','ICE','CFE','CBOT','NYMEX','COMEX','RUT','CIDX','ARCA','NYSE','OTC','NSDQ','MFQS','MIAX','DJI','CUSIP','ISIN','BXE','SCE','ANY','CXE','DXE','NXAM','NXBR','NXLS','NXML','NXOS','NXP','EUREX','CEDX','ICEFE','ICELF') */
`ticker_ts` = 'None'
AND
/* Replace with a VARCHAR(12) */
`ticker_tk` = 'Example_ticker_tk'
AND
/* Replace with a VARCHAR(64) */
`riskControlKey` = 'Example_riskControlKey'
AND
/* Replace with a ENUM('None','ClientFirm','Accnt','User','UserAccnt') */
`riskControlLevel` = 'None'
AND
/* Replace with a VARCHAR(16) */
`riskFirm` = 'Example_riskFirm'
AND
/* Replace with a ENUM('None','Yes','No') */
`isTestAccnt` = 'None';

Doc Columns Query

SELECT * FROM SRControl.doccolumns WHERE TABLE_NAME='SRRiskControl' ORDER BY ordinal_position ASC;